import * as monaco from 'monaco-editor';
// 编辑器主题色
// 来源：https://github.com/brijeshb42/monaco-themes
export const Blackboard: monaco.editor.IStandaloneThemeData = {
  base: 'vs-dark',
  inherit: true,
  rules: [
    {
      background: '0C1021',
      token: '',
    },
    {
      foreground: 'aeaeae',
      token: 'comment',
    },
    {
      foreground: 'd8fa3c',
      token: 'constant',
    },
    {
      foreground: 'ff6400',
      token: 'entity',
    },
    {
      foreground: 'fbde2d',
      token: 'keyword',
    },
    {
      foreground: 'fbde2d',
      token: 'storage',
    },
    {
      foreground: '61ce3c',
      token: 'string',
    },
    {
      foreground: '61ce3c',
      token: 'meta.verbatim',
    },
    {
      foreground: '8da6ce',
      token: 'support',
    },
    {
      foreground: 'ab2a1d',
      fontStyle: 'italic',
      token: 'invalid.deprecated',
    },
    {
      foreground: 'f8f8f8',
      background: '9d1e15',
      token: 'invalid.illegal',
    },
    {
      foreground: 'ff6400',
      fontStyle: 'italic',
      token: 'entity.other.inherited-class',
    },
    {
      foreground: 'ff6400',
      token: 'string constant.other.placeholder',
    },
    {
      foreground: 'becde6',
      token: 'meta.function-call.py',
    },
    {
      foreground: '7f90aa',
      token: 'meta.tag',
    },
    {
      foreground: '7f90aa',
      token: 'meta.tag entity',
    },
    {
      foreground: 'ffffff',
      token: 'entity.name.section',
    },
    {
      foreground: 'd5e0f3',
      token: 'keyword.type.variant',
    },
    {
      foreground: 'f8f8f8',
      token: 'source.ocaml keyword.operator.symbol',
    },
    {
      foreground: '8da6ce',
      token: 'source.ocaml keyword.operator.symbol.infix',
    },
    {
      foreground: '8da6ce',
      token: 'source.ocaml keyword.operator.symbol.prefix',
    },
    {
      fontStyle: 'underline',
      token: 'source.ocaml keyword.operator.symbol.infix.floating-point',
    },
    {
      fontStyle: 'underline',
      token: 'source.ocaml keyword.operator.symbol.prefix.floating-point',
    },
    {
      fontStyle: 'underline',
      token: 'source.ocaml constant.numeric.floating-point',
    },
    {
      background: 'ffffff08',
      token: 'text.tex.latex meta.function.environment',
    },
    {
      background: '7a96fa08',
      token: 'text.tex.latex meta.function.environment meta.function.environment',
    },
    {
      foreground: 'fbde2d',
      token: 'text.tex.latex support.function',
    },
    {
      foreground: 'ffffff',
      token: 'source.plist string.unquoted',
    },
    {
      foreground: 'ffffff',
      token: 'source.plist keyword.operator',
    },
  ],
  colors: {
    'editor.foreground': '#F8F8F8',
    'editor.background': '#0C1021',
    'editor.selectionBackground': '#253B76',
    'editor.lineHighlightBackground': '#FFFFFF0F',
    'editorCursor.foreground': '#FFFFFFA6',
    'editorWhitespace.foreground': '#FFFFFF40',
  },
};

export const GithubBoard: monaco.editor.IStandaloneThemeData = {
  base: 'vs',
  inherit: true,
  rules: [
    {
      background: 'FFFFFF',
      token: '',
    },
    {
      foreground: '008e00',
      token: 'comment',
    },
    {
      foreground: '7d4726',
      token: 'meta.preprocessor',
    },
    {
      foreground: '7d4726',
      token: 'keyword.control.import',
    },
    {
      foreground: 'df0002',
      token: 'string',
    },
    {
      foreground: '3a00dc',
      token: 'constant.numeric',
    },
    {
      foreground: 'c800a4',
      token: 'constant.language',
    },
    {
      foreground: '275a5e',
      token: 'constant.character',
    },
    {
      foreground: '275a5e',
      token: 'constant.other',
    },
    {
      foreground: 'c800a4',
      token: 'variable.language',
    },
    {
      foreground: 'c800a4',
      token: 'variable.other',
    },
    {
      foreground: 'c800a4',
      token: 'keyword',
    },
    {
      foreground: 'c900a4',
      token: 'storage',
    },
    {
      foreground: '438288',
      token: 'entity.name.class',
    },
    {
      foreground: '790ead',
      token: 'entity.name.tag',
    },
    {
      foreground: '450084',
      token: 'entity.other.attribute-name',
    },
    {
      foreground: '450084',
      token: 'support.function',
    },
    {
      foreground: '450084',
      token: 'support.constant',
    },
    {
      foreground: '790ead',
      token: 'support.type',
    },
    {
      foreground: '790ead',
      token: 'support.class',
    },
    {
      foreground: '790ead',
      token: 'support.other.variable',
    },
  ],
  colors: {
    'editor.foreground': '#000000',
    'editor.background': '#FFFFFF',
    'editor.selectionBackground': '#B5D5FF',
    'editor.lineHighlightBackground': '#00000012',
    'editorCursor.foreground': '#000000',
    'editorWhitespace.foreground': '#BFBFBF',
  },
};
